'use strict'

/**
 * 路由配置
 */

module.exports = app => {
  const { router, controller } = app

  // 首页
  router.get('/home', controller.home.index)
  router.redirect('/docs', '/swagger-ui.html', 302)

  // 设置统一的前缀，前缀地址在 config/config.default.js 中配置
  const subRouter = router.namespace(app.config.apiPrefix)
  // 开发环境
  const isDev = app.config.env === 'local' || app.config.env === 'test' || app.config.env === 'unittest'


  /**
   * 用户模块
   */
  // 本地环境和测试环境下开放 mock 登录，方便开发和调试
  if (isDev) {
    // subRouter.get('/v1/user/mock', controller.user.mock)
  }

  // 上传接口
  subRouter.post('/v1/upload/file', controller.upload.file)
  subRouter.post('/v1/upload/stream', controller.upload.stream)

  // APP密钥列表
  subRouter.post('/v1/appauth/list', controller.appauth.list)

  // 小程序登录
  subRouter.post('/v1/user/wx_login', controller.user.wx_login)
  // 账号密码登录
  subRouter.post('/v1/user/login', controller.user.login)
  // 小程序注册用户
  subRouter.post('/v1/user/wx_phone', controller.user.wx_phone)
  // 新建用户
  subRouter.post('/v1/user/create', controller.user.create)
  // 修改个人密码
  subRouter.post('/v1/user/changepwd', controller.user.change_password)
  // 编辑用户信息
  subRouter.post('/v1/user/edit', controller.user.edit)
  // 删除用户
  subRouter.post('/v1/user/delete', controller.user.delete)
  // 登出
  subRouter.post('/v1/user/logout', controller.user.logout)
  // 小程序登出
  subRouter.post('/v1/user/wx_logout', controller.user.wx_logout)
  // 获取用户信息
  // subRouter.post('/v1/user/info', controller.user.info)
  // 查询用户列表
  subRouter.post('/v1/user/list', controller.user.list)


  // 查询门店列表
  subRouter.post('/v1/place/list', controller.place.list)
  // 新增门店
  subRouter.post('/v1/place/create', controller.place.create)
  // 编辑门店
  subRouter.post('/v1/place/edit', controller.place.edit)
  // 删除门店
  subRouter.post('/v1/place/delete', controller.place.delete)
  // 获取门店授权(无需登录)
  subRouter.post('/v1/place/auth', controller.place.auth)
  // 通过barcode查询门店信息(无需登录)
  subRouter.post('/v1/place/barcode', controller.place.getPlaceByBarCode)
  // 更新门店SDK版本号
  subRouter.post('/v1/place/version', controller.place.updatePlaceSdkVersion)

  // 查询桌面配置列表
  subRouter.post('/v1/desktopcfg/list', controller.desktopcfg.list)
  // 新增桌面配置
  subRouter.post('/v1/desktopcfg/create', controller.desktopcfg.create)
  // 编辑桌面配置
  subRouter.post('/v1/desktopcfg/edit', controller.desktopcfg.edit)
  // 删除桌面配置
  subRouter.post('/v1/desktopcfg/delete', controller.desktopcfg.delete)
  // 获取门店当前使用的配置
  subRouter.post('/v1/desktopcfg/current', controller.desktopcfg.current)
  // 应用门店当前使用的配置
  subRouter.post('/v1/desktopcfg/apply', controller.desktopcfg.apply)

  // 查询机位图列表
  subRouter.post('/v1/seat/list', controller.seat.list)
  // 新增机位图
  subRouter.post('/v1/seat/create', controller.seat.create)
  // 编辑机位图
  subRouter.post('/v1/seat/edit', controller.seat.edit)
  // 删除机位图
  subRouter.post('/v1/seat/delete', controller.seat.delete)
  // 获取门店当前使用的配置
  subRouter.post('/v1/seat/get', controller.seat.get)

  // 查询会员列表
  subRouter.post('/v1/member/list', controller.member.list)
  // 新增会员
  subRouter.post('/v1/member/create_update', controller.member.create_update)
  // 编辑会员
  subRouter.post('/v1/member/edit', controller.member.edit)
  // 删除会员
  subRouter.post('/v1/member/delete', controller.member.delete)
  // 查询在线会员列表
  subRouter.post('/v1/member/online_list', controller.member.online_list)
  // 会员事件上报
  subRouter.post('/v1/member/post_event', controller.member.post_event)
  // 查询充值记录
  subRouter.post('/v1/member/recharge_list', controller.member.recharge_list)
  // 查询上机记录
  subRouter.post('/v1/member/upmachine_list', controller.member.upmachine_list)
  // 查询下机记录
  subRouter.post('/v1/member/downmachine_list', controller.member.downmachine_list)


}
